body {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(5vw,1fr) minmax(350px,900px) minmax(5vw,1fr);
    grid-template-areas: 
    "header header header"
    "home home home"
    ". about ."
    ". video ."
    ". order ."
    ". contact ."
    "footer footer footer";
    font-family: 'Amatic SC', cursive;

    background-color: antiquewhite;
    color: #333;
}

a {
    text-decoration: none;
    color: #333;
}

a:hover {
    color: orangered;
}

em{
    font-weight: 900;
}

.pos {
    position: relative;
    top: 60px;
}
/* HEADER */

header {
    position: fixed;
    grid-area: header;
    background-color: white;
    z-index: 1;
    display: grid;
    align-content: center;
    width: 100%;
    grid-template-columns: minmax(5vw,1fr) minmax(350px,900px) minmax(5vw,1fr);
    grid-template-areas: 
    ". header-container .";
}

#header-container {
    grid-area: header-container;
    display: grid;
    grid-template-rows: repeat(2,minmax(1fr,30px));
    width: 100%;
    grid-template-columns: 300px repeat(3, minmax(5px,1fr));
    gap: 10px;
    grid-template-areas: 
    "logo . . ."
    "logo . social nav";
}

#logo-link {
    grid-area: logo;
    display: flex;
    align-content: flex-end;
    flex-wrap: nowrap;
    font-size: 1.8em;
}

#logo-link img {
    width: 50px;
    align-self: center;
    margin-right: 10px;
}

#logo-link a{
    text-decoration: none;
    color: #333;
    align-self: center;
}

#social {
    grid-area: social;
    align-self: end;
    justify-self: end;
}

#social a {
    color: #333;
    margin-left: 10px;
}

#social a:hover {
    color: orangered;
}

#main-nav {
    grid-area: nav; 
}

 #main-nav ul {
    list-style: none;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
    
}

#main-nav li {
    font-size: 1.4em;
    margin: 0 10px;   
} 

@media (max-device-width: 900px) {
    header {
        grid-template-columns: minmax(5vw,1fr) minmax(200px,480px) minmax(5vw,1fr);
    }
    
    #header-container {
        grid-template-rows: repeat(3,minmax(1fr,40px));
        grid-template-columns: 1fr;
        grid-template-areas: 
        "logo"
        "social"
        "nav";
    }
    
    #logo-link {
        align-content: center;
        justify-content: center;
    }
    
    
    #social {
        align-self: center;
        justify-self: center;
        width: 140px;
        display: flex;
        justify-content: space-between;
    }
    
    #social a {
        color: #333;
    }
     #main-nav ul {
        justify-content: space-between;
    }
    
}

/* HOME */

#home {
    grid-area: home;    
    background-image: url("../images/bgpattern.png"); 
    background-repeat: repeat;
}

.container {
    display: flex; 
    max-width: 900px;
    margin: 0 auto;
}

#hero-text {
    width: 50%;
}

#hero-text h1 {
    font-size: 4em;
    text-align: right;
    width: 200px;
    margin-left: auto;
    margin-right: 15%;
    margin-top: 40%;
    font-weight: 900;
}

#hero-text h3 {
    font-size: 1.6em;
    text-align: right;
    margin-right: 15%;;
}

#home img {
    width: 50%;
    height: auto;
    padding: 75px; 
    align-self: center; 
}
/* ABOUT */

#about {
    grid-area:about;
}

#about-text {
    width:70%;
    padding: 5%;
    margin-top: 60px;
}

#about-text h3 {
    font-size: 2em;
    font-weight: 700;
}

#about-text p {
    font-size: 1.6em;
    text-align: justify;
}

#about img{
    padding: 5%; 
    max-width: 100%;
    height: auto;
    align-self: center;
}

/* VIDEO */

#video {
    grid-area:video;
}

.iframe-holder  {
    overflow: hidden;
    padding-top: 56.25%;
    position: relative;
    margin: 5%;
}

.iframe-holder iframe {
    border: 0;
    height: 100%;
    left:0;
    position: absolute;
    top: 0;
    width: 100%;
}



/* ORDER */
#order {
    grid-area:order;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-template-areas: 
    "h h h"
    "o o o";
}

#order h3{
    grid-area: h;
    font-size: 2em;
    text-align: center;
    font-weight: 900;
}

.order-items{
    margin-top: 20px;
    grid-area: o;
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.order-item {
    width:30%;
}

.order-item img {
    width: 100%;
    height: auto;
}

.order-item :first-child img{
    position: absolute;
    top: 90px;
    
}

.order-item button {
    width: 100%;
    height: 40px;
    margin-top: 5px;
    font-family: "Amatic SC", cursive;
    font-size: 1.6em;
    border: transparent;
    background-color: orangered;
    color: white;
}

/* CONTACT */

#contact {
    grid-area:contact;
    margin-top: 40px;
}

#contact h3{
    grid-area: h;
    font-size: 2em;
    text-align: center;
    font-weight: 900;
}

#contact p{
    font-size: 1.6em;
    text-align: center;
    margin:20px;
}

#contact form {
    display: flex;
    width: 100%;
    margin: 0 auto;
    justify-content: space-between;
}

#contact input {
    width: 60%;
    height: 40px;
    font-family: 'Amatic SC', cursive;
    font-size: 1.6em;
    padding: 5px;
}

#contact button {
    width: 35%;
    border: transparent;
    font-family: 'Amatic SC', cursive;
    font-size: 1.6em;
    background-color: orangered;
    color: white;
}



/* FOOTER */

footer {
    margin-top: 40px;
    grid-area:footer;
    background-color: #ccc;
}

footer h3 {
    margin-top: 20px;
    text-align: center;
    font-size: 1.4em;
}

footer #social{
    margin: 0 auto;
    margin-top: 20px;
    width: 110px;
    display: flex;
    justify-content: space-between;
}

footer #social a {
    margin-left:0;
}


footer #main-nav {
    margin-top: 20px;
}
footer #main-nav ul{
    width: 230px;
    justify-content: space-between;
    margin: 0 auto;
    
}

footer p{
    margin-top: 20px;
    text-align: center;
}